package com.sright.bcard.user.dal.dao;

import com.sright.bcard.common.service.share.base.dao.BaseDAO;
import com.sright.bcard.common.service.share.dto.page.PageParamRequest;
import com.sright.bcard.user.dal.entity.VisitorDO;

import java.util.Date;
import java.util.List;

public interface VisitorDAO extends BaseDAO<VisitorDO> {

    int deleteByPrimaryKey(Long id);

    List<VisitorDO> selectByEnterpriseId(Long enterpriseId);

    List<VisitorDO> selectByEnterpriseIdAndMemberId(Long enterpriseId, Long visitorMemberId);

    Integer getVisitTotalByEnterpriseIdAndMemberId(Long enterpriseId, Long visitorMemberId);

    VisitorDO selectByUserIdAndCardId(Long cardUserId, Long memberId);

    VisitorDO selectByMmeberIdOrderTime(Long memberId);

    Integer selectSum(Long userId, Long memberId);

    Integer selectCount(Long userId);

    List<VisitorDO> selectPageData(PageParamRequest paramRequest, Long userId, String order,Long memberId);

    Integer selectCountBetweenDate(Long userId, Date beginDate, Date endDate);

    List<VisitorDO> selectAllData(Long userId, Long memberId);

    Integer selectSumTotalByEnterpriseId(Long enterpriseId);
}
